package org.jeecg.modules.message.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.common.system.base.entity.JeecgEntity;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * @Description: 消息
 * @Author: jeecg-boot
 * @Date:  2019-04-09
 * @Version: V1.0
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("sys_sms")
@Deprecated
public class SysMessage extends JeecgEntity {
	/**推送内容*/
	@Excel(name = "推送内容", width = 15)
	private Object esContent;
	/**推送所需参数Json格式*/
	@Excel(name = "推送所需参数Json格式", width = 15)
	private String esParam;
	private String departId;
	private String projectId;
	/**业务ID*/
    private String businessId;
    /**业务类型*/
    private Integer businessType;
    /**短信发送级别 0未发送  1已发送*/
    private Integer smsLevel;


	/**接收人*/
	@Excel(name = "接收人", width = 15)
	private String esReceiver;
	/**推送失败原因*/
	@Excel(name = "推送失败原因", width = 15)
	private String esResult;
	/**发送次数*/
	@Excel(name = "发送次数", width = 15)
	private Integer esSendNum;
	/**推送状态 0未推送 1推送成功 2推送失败*/
	@Excel(name = "推送状态 0未推送 1推送成功 2推送失败", width = 15)
	@Dict(dicCode = "msgSendStatus")
	private String esSendStatus;
	/**推送时间*/
	@Excel(name = "推送时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	private java.util.Date esSendTime;
	/**消息标题*/
	@Excel(name = "消息标题", width = 15)
	private String esTitle;
	/**推送方式：1短信 2邮件 3微信*/
	@Excel(name = "推送方式：1短信 2邮件 3微信", width = 15)
	@Dict(dicCode = "msgType")
	private String esType;
	/**备注*/
	@Excel(name = "备注", width = 15)
	private String remark;
	/**所属机构*/
	@Excel(name = "所属机构", width = 15)

	private String floorId;
	private String roomId;
	/**第三方回传的唯一标识*/
	private String esBizId;
	/**是否计费*/
	private String isBilling;
	/**单价*/
	private String price;

	@TableField(exist = false)
	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
	private Date startTime;
	@TableField(exist = false)
	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
	private Date endTime;
	@TableField(exist = false)
	private Long tenantId;
}
